Data Structures
Data structures and algorithms are patterns for solving problems. The more of them you have in your utility belt, the greater variety of problems you'll be able to solve. You'll understand, in depth, how your computer gets things done. All computers rely on fundamental data structures and algorithms, so understanding them better makes you understand the computer better.